Skip to content

Conversation

thecrypticace
Copy link
Contributor

@thecrypticace thecrypticace commented Oct 3, 2025

I don't know for sure if this is actually possible or otherwise works to fix #1470. Need to test locally on Windows. Dropping from the require cache does not work sadly.

If this doesn't work then using child_process.fork() to spin up an ephemeral process that communicates this information over IPC would probably work.

@thecrypticace thecrypticace marked this pull request as draft October 3, 2025 01:52
@DustinsCode
Copy link

I can pull it down at work on my windows machine tomorrow to try it out and report back!

@thecrypticace
Copy link
Contributor Author

thecrypticace commented Oct 3, 2025

So it looks like this isn't possible from my (somewhat limited) testing. Node supposedly handles the unloading of these files but I'm guessing it just doesn't on Windows.

If you run this script:

let mod = require("./node_modules/@tailwindcss/oxide-win32-arm64-msvc/tailwindcss-oxide.win32-arm64-msvc.node")

console.log(mod);
mod = null
delete require.cache["./node_modules/@tailwindcss/oxide-win32-arm64-msvc/tailwindcss-oxide.win32-arm64-msvc.node"];

setTimeout(() => {}, 60_000)

and then try to run npm ci it will fail so I think our only option here is process forking + IPC. This is kinda annoying to have to do but it's probably the only real way to do this so. 🤷‍♂️

@thecrypticace thecrypticace changed the title Unload Oxide binary on Windows after use Offload Oxide scanning to separate process Oct 3, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Extension is locking @tailwindcss/oxide-win32-x64-msvc.node
2 participants